// web服务器的入口
// 1.0 3步开启web服务器
const express = require('express');

const server = express();
// 让当前服务器的所有接口允许跨域
const cors = require('cors');
server.use(cors());

server.use(express.urlencoded());

// 导入mysql封装模块函数
const runSql = require('./utils/mysqlHelper.js');

// 2.0 开启路由接口：/api/getHeroSkin
server.get('/api/getHeroSkin', (req, res) => {

    // 3.0 调用mysql第三方包完成英雄数据库(hero)中的表(skin)数据的查询
    let sql = ` select * from skin `;
    // runSql(sql, function (error, results) {   })
    runSql(sql, (error, results) => {
        // 4.0 异常处理
        if (error) {
            res.send({ code: 500, msg: error.message });
            return; //阻止下面代码的运行
        }

        // 5.0 将results结果响应会客户端
        res.send({ code: 200, msg: '英雄皮肤数据获取成功', list: results });
    })
});

// 3.0 开启路由接口：/api/addHeroSkin
server.post('/api/addHeroSkin', (req, res) => {

    // 1.0 接收请求报文体中的数据 req.body
    let { cname, sname } = req.body;

    // 2.0 定义insert sql语句
    let sql = ` insert into skin(cname,skin_name) values('${cname}','${sname}') `;

    // 3.0 执行SQL语句响应
    runSql(sql, (error, results) => {
        // 4.0 异常处理
        if (error) {
            res.send({ code: 500, msg: error.message });
            return; //阻止下面代码的运行
        }

        // 5.0 正常响应
        res.send({ code: 200, msg: '数据添加成功' })
    })
})

server.listen(3006, () => {
    console.log(3006);
})


